#ifndef CONFIG_H
#define CONFIG_H

#include <QString>
#include <QStringList>
#include <QPair>

// 文件配置
const QString file_table {"Table.txt"};     // 表格信息文件
const QString file_template_dir {"Template/"};      // 表格代码模板目录
const QString file_pre {file_template_dir+"pre.txt"};       // 表格前代码
const QString file_end {file_template_dir+"end.txt"};       // 表格后代码
const QString file_save {"Table.png"};      // 保存截图文件

// 难度配置
const QStringList diff_name { "简单", "复杂", "高难度", "超高难度", "强软局" };       // 难度类别名称

// 胜负和配置
const QStringList res_win { "例胜", "win", "胜" };     // 例胜
const QStringList res_draw { "例和", "draw", "和" };       // 例和
const QStringList res_disputed { "纷和", "disputed", "纷胜", "纷" };     // 纷和
const QList<QPair<QString,QString>> res_name { {"win","例胜"}, {"draw","例和"}, {"disputed","纷和"} };        // 结论名称

// 截图配置
constexpr double paste_scale {1.5};     // 截图放大倍率，越大越清晰

// 类别配置
enum class Class_enum { rook, horse, cannon, pawn, rp, hp, cp, rhs, rcs, hcs, comp, empty };        // 残局类别
const QStringList class_name { "车", "马", "炮", "兵", "车兵", "马兵", "炮兵", "车马复合", "车炮复合", "马炮复合", "全大子", "无攻" };     // 残局类别名

// 子力配置
const QList<QPair<QString,int>> chess_value { {"车",10}, {"马",4}, {"炮",4}, {"兵卒",2}, {"仕相士象",1} };       // 子力价值
const QString chess_red {"兵仕相"};        // 红方特有棋子
const QString chess_black {"卒士象"};      // 黑方特有棋子
const QString chess_king {"将帅"};        // 将帅棋子
const QList<QPair<QString,int>> chess_max { {"车马相仕象士炮",2}, {"兵卒",5} };      // 最多子力

#endif // CONFIG_H
